                                StarAm Plan
                                   V2.04
                                Quick Manual

Copyright  1997 by Thorsten Passow

This quick manual describes the most important things you need to know, if you
want to work with StarAm Plan. There are many features, which make the work
with StarAm Plan easier but are not mentioned in this quick manual. Some of
them works like in other spreadsheet programs, so try if you know features of
other spreadsheets. StarAm Plan support almost complete AmigaOS 3.0. These
features are not mentioned in this quick manual, so try if StarAm Plan support
them.

There are other important informations in the file ReadMeFirst! which you MUST
read. IF YOU DO NOT READ ReadMeFirst! YOU MUST NOT USE StarAm Plan! All
informations in ReadMeFirst! aren't repeated in this quick manual.

1. How to install?

Unpack the archieve and read ReadMeFirst!. If you haven't installed
reqtools.library version 38, you must copy it to libs:. There is no need to
copy any other file to elsewhere. To activate the english catalog, read
ReadMeFirst!.

2. How to start?

Doubleclick on the icon StarAm Plan881 if you have a 68020 CPU and 68881 FPU or
higher, else doubleclick on StarAm Plan.

3. What is a worksheet?

The main documents in StarAm Plan are worksheets. After you've started StarAm
Plan. you will see a worksheet on the screen.
A worksheet is an array of cells. The cells are named by its row and its column
in the array. The columns are counted by letters from A to ZZZ. The rows are
counted from 1 to 32766. The letters and numbers are shown above/left of the
worksheet in the same window. All texts, values and formulars are in the diverse
cells of the worksheet. All you input in the cells is shown calculated and
formatted in the worksheet. That what you've entered in the cell is shown above
the worksheet in the same window in the line Cont.:.

3. How to input?

The sizes of the worksheets are different. The active cell, which is shown
highlightet, can only be inside the boundaries of the worksheet. If you are in
the last row of the worksheet and you press RETURN, the worksheet will become
one row larger. If you are in the last column of the worksheet and press TAB,
the worksheet will become one column larger. A new (empty) worksheet contains
only the cell A1, so you must first make the worksheet larger.

If you press a character key or the Esc key, the contents of the current cell
is deleted and the character or Esc (a rectangle is shown for this
"character") is the new contents of the cell. You are now in input mode, so you
can enter further characters in this cell. You can see, what you enter, in the
string gadget Cont.:, which changes its name to Input: if you are in input
mode. To change into input mode, you can also click in the string gadget
Cont.:. To leave input mode press RETURN, if the string gadget is active. If
you want to undo the input BEFORE you've left input mode, you must delete the
contents of the string gadget and then press RETURN.

There are five types of things, you can enter into a cell:
a. Texts: Everything, which is not one of the other four things is a text.
b. Decimal numbers: 12.65 (normal decimal number)
                    3.647E-23 (decimal number in scientific notation)
                    maximum decimals: 16
                    maximum exponent: 308
c. Dates: to input 23-Nov-1996 you must type: 23/11/1996
                   23/11/96 means 23-Nov-0096 !!!!
d. Time: 13:23:56 (hours:minutes:seconds), max. hour 23, min. hour 0
e. Formulars: The other four types are constants and aren't calculated. This
              type will produce a cell type (this is not the same as these
              types!) of decimal number like type b or a text like type a, if
              the cell is empty. You can change the cell type later.
              A formular must start with an Esc (see above) for decimal
              numbers and with ""+ (without  and ) for texts.


4. Cell type and cell format

If you want first to select the format of a cell and then enter something, you
must set the correct cell type with the Format/Type commands, before you set
the format. Hint: Use multiselection of menuitems!

The value of a cell of type date means the days since 1-Jan-1978, e.g. -1 is
31-Dec-1977, 0 is 1-Jan-1978, 1 ist 2-Jan-1978. To see this, enter 1 in a cell
and select Format/Types/Date from the pulldown menus and enter 1/1/1978 in a
cell and select Format/Types/Value.
The value of a cell of type time means the seconds since midnight.
The value 1 of a cell of type month means january, 12 means december.
The value 1 of a cell of type weekday means monday, 7 means sunday.

5. Syntax of formulars

A formula to calculate a value must begin with the sign Esc (the Esc key),
which is shown as rectangle. You can use expressions with functions (build in
and user defined), + (addition), - (subtraction), * (multiplication),
/ (division), ^ (power), =, <, >, <=, >=, <> (boolean comparisons, 0 if false,
1 if true), ( and ). The Esc may only be the first character of a formula.

The arguments can be:

- cells and ranges:
  cells: e.g. B12
  ranges of cells: e.g. B12-C23, B12 is the top/left and C23 the bottom/right
                   cell of the range. The top/left cell MUST be the first!
  If Relocate is set in the window Edit-Settings (to open in the icon bar),
  StarAm Plan interprete this as relative to the cell this formula is in, e.g.
  the formula is in cell C12, then B12 means the cell one column left.
  If you set a ! behind the column and/or row, then it is interpreted as
  absolute: B!12! means B12, B12! means the cell in row 12 one column left,
  B!12 means the cell in column B in the same row. If Ignore ! is selected
  in the window Edit-Settings, then also B!12!, B12!, B!12 are relative.
  If Relocate is NOT set, then B12 is absolute, too. Be carefull if you
  make something like this: B!12!-C23. This could produce a wrong range, if
  you move the cell with this formula.
  Cells and ranges of another layer of a 3dim. worksheet (another worksheet
  of the project) can be accessed by XX: in front of the cell/range, XX is
  the layer: AA, AB, ..., ZZ. 3dim. ranges are possible, e.g. AC:B12-AE:C23.
  There mustn't be a ! behind the the layer, e.g. AC!:B12 is not possible.
- names for cells and ranges: &name. The names must begin with a & and are
  case sensitive. &Blatt is always defined as the complete worksheet.
  Access to names of another layer is possible, e.g. AC:&name.
- variables: variables can contain a value, must begin with %, e.g.
  %variable, and are case sensitive. %Pi is always defined as 3.14...,
  %Falsch is always defined as 0 and %Wahr is always defined as 1.
- build in functions: see below.
- user defined functions: @function. The functions must begin with a @ and
  are case sensitive. If you enter a calculable expression in the string
  gadget Formul. of the window Define Functions, then the function results a
  value. If you enter a text-formula then the function results a text.
  The arguments of a user defined function can be values or texts (as
  constant or formula). In the string gadget Arguments of the window Define
  Functions, there must be a % for each value argument and a $ for each text
  argument in the correct order and without a seperator. In the entered
  formular (string gadget Formul.) the arguments are 1, 2, 3, ... 14
  (the number is the number of the argument). You could place them where you
  could place variables. Ranges as arguments are not possible.
- links to cells and ranges of other worksheets: A link begin with \ and end
  with . (a point). Between both characters must the name of the worksheet
  without the suffix .sab. Only links to worksheets with the suffix .sab are
  possible. Examples: \worksheet.B4, \worksheet.B12-C23, \worksheet.&name

Formulars to create Texts must start with a Text-Constant, e.g. ""+, the
+ adds a text to an other text, e.g. "Hello"+" I" is "Hello I".
You can use text-functions (they start with $), text-variables (they start
with $ and are case sensitive), cells (inclusive links to other worksheets),
names (inclusive links to other worksheets), text-constants (enclosed by ")
and user defined functions in text formulars.

6. Mark ranges of cells

Many commands of StarAm Plan work on cells. You must mark the cells a command
shall work on. You can select a cell by clicking on it with the left mouse
button (or using the cursor keys, see next section). You can mark a range by
moving the mouse pointer over the upper left cell of the range, press the left
mouse button and move (with pressed left mouse button) the mouse pointer to
the lower right cell of the range. If the shift key is pressed while you mark
a range then the range will be marked additionally (multiselection of ranges).
If you click on Z\S then the whole worksheet will be marked as range, if you
click on the names of columns (A, B, ...) or rows (1, 2, 3, ...) then the
column or row will be marked as range.

7. Commands which are not in the pulldown menus

You can change the width of a column by pressing the left mouse button over
the right frame of the name (A, B, C, ...) of the column and move the mouse
pointer (with pressed left mouse button) to the new width. With a double click
on the right frame StarAm Plan choose the best width (this is one character
more than the maximum length of a cell contents in this column).

If you press the left amiga key while you mark a range then the mouse pointer
changes. With the right mouse button you can abort now. If you click on a cell
now then the marked range will be moved to the new position. If you press the
left amiga key while you click on the cell then the marked range will be
copied.
If you press an alt key while you mark a range then the command
Edit/Duplicate/right (only cells in one row were marked) or .../left (only
cells in one column were marked) will be executed. An arithm. series with
increment 1 will be created, if you press Ctrl instead of Alt.

Keyboard commands of the editor:
Cursor up     - the cell cursor moves one cell up
Cursor down   - the cell cursor moves one cell down
Cursor right  - the cell cursor moves one cell right
Cursor left   - the cell cursor moves one cell left.
... with Ctrl - the cell cursor moves in the first/last row/column
... with Alt  - ... into the first/last  row/column on the screen or one page
                in arrow direction
mark range    - if the left shift key is pressed, then the range will be
                increased or decreased left and top with the keys described
                above. With the right shift key pressed it happens the same
                right and bottom.
Help          - call the online help
Backspace     - moves the cell cursor one cell left.
Return        - moves the cell cursor to the beginning of the next row. If the
                cell cursor is in the last row, then the worksheet will become
                one row larger.
Tab           - moves the cell cursor one cell right. If the cell cursor is in
                the last column, the worksheet will become one column larger.
Ctrl-Return   - the text in the cell is wraped into the following cells.
Ctrl-e        - the input mode is activated.
Ctrl-g        - the cell (range) string gadget is activated (go to command)
Ctrl-r        - the current worksheet window is refreshed
CTRL-=        - the current worksheet (no range marked)/current range is
                recalculated
Del           - the contents and format of the current cell is deleted
Ctrl-Shift-m  - marks the whole worksheet as range
Ctrl-%        - changes cell type of current cell to percent
Ctrl-.        - changes cell type of current cell to date
Ctrl-:        - changes cell type of current cell to time

Gadgets in the icon bar (sorted up to down):
- open worksheet manager
- open chart manager
- open variables manager
- open names-manager
- open function-manager (only user defined functions!)
- open format manager
- open tab. format manager
- open character window
- open edit settings window
- Worksheet/New
- Worksheet/Open
- Worksheet/Save
- recalculates the current range or current worksheet (no range marked)
- Worksheet/Print as
- Edit/Cut/Clear
- Edit/Copy
- Edit/Insert/Overwrite
- centers the contents of the current cell in the whole row. Other cells in the
  row are overwritten.

8. Pulldown Menus

The worksheet windows, the graphic windows and the chart manager have
(different) pulldown menus. I think they are self explained.

9. Create charts

Not all chart types are available in the menu Graphic. You must use the chart
manager if you want to use the full capability. StarAm Plan has 8 chart types
with several subtypes. You can select the types with the cycle gadget. The
subtypes must be selected in the windows Chart Attributes (checkbox gadget
3D Eff.) and Special. Step, line, point and xy charts are subtypes of the
type curve.
For a histogram you must set a x-range in the window System of Coordinates.
If you want to create a xy chart then the values in the cells of the row in
the integer gadget Row in the window Chart Attributes (Rows is NOT
checked) or the column in the string gadget Column (Rows is checked) must
be in ascending order. If No xy (in window Special) is NOT checked and the
condition is fulfilled then EVERY curve chart becomes a "false" xy chart.
If you want a "true" xy chart then Pairs must be checked. Each datapoint
must be a pair of two (if you want errorbars up to six) values (cells). THE
CONDITION MUST BE FULFILLED, TOO!

Creating charts is very complex. I haven't described all you need to know if
you want to use the full capability. I strongly recommend to look at the examples
and to play with the settings.

A. Build in functions

If a function have more then one argument, then you must separate the
arguments by the character #.
VAR,  VAR1  and  VAR2  represent cells or ranges.  CELL, CELL1, CELL2,
CEL1, CEL2, CEL3 must be a cell or variable, RANGE,  RAN1, RAN2 must be a
range.  EXPRESSION, EXPR1,  EXPR2,  EXP1,  EXP2 can be every calculable
expression. BOOL can be every boolean expression (Value: 0 or  1, e.g.
comparisons, boolean functions). TEXT, TXT1, TXT2  can be every text formula.
See also subitmens of menu Calculate. I hope the following is translated correct.
ABS(EXPRESSION)    : Make EXPRESSION positive
ACH(EXPRESSION)    : Area cosinus of EXPRESSION
ACS(EXPRESSION)    : Arcuscosinus of EXPRESSION in radiant
AGL(CELL#VAR#...)  : Number of arguments equal to CELL
AGR(CELL#VAR#...)  : Number of arguments larger than CELL
AKL(CELL#VAR#...)  : Number of arguments smaller than CELL
ANL(VAR1#VAR2#...) : Number of not empty + not text cells
ANN(VAR1#VAR2#...) : Number of arguments unequal zero
ANN(CEL1#CEL2#CEL3): Calculates amount of annuity(payment,future Value,rate of interest)
ANW(CELL#VAR#...)  : Calculates net value of VAR with rate of interest CELL
AQV(BOOL1#BOOL2)   : boolean aquivalence of BOOL1, BOOL2
ASA(RAN1#RAN2)     : Extern deviation of values in RAN1 with errors in RAN2
ASC(TEXT)          : Results ASCII-Code of first character of TEXT
ASH(EXPRESSION)    : Area sinus of EXPRESSION
ASN(EXPRESSION)    : Arcussinus of EXPRESSION in radiant
ATH(EXPRESSION)    : Area tangens of EXPRESSION
ATN(EXPRESSION)    : Arcustangens of EXPRESSION in radiant
AWT(CEL1#CEL2#CEL3): Calc. actual value (instalment,rate of interest, periods)
BWT(CEL1#CEL2#CEL3): Calc cash value (principal,rate of interest,periods)
COS(EXPRESSION)    : Cosinus of EXPRESSION, EXPRESSION in radiant
CSH(EXPRESSION)    : Cosinus hyperbolicus of EXPRESSION
DAD(VAR1#VAR2#...) : 
DAM(VAR1#VAR2#...) : 
DAT(EXP1#EXP2#EXP3): Date from year,month,day
DON(VAR1#VAR2#...) : Average without zero
DST(VAR1#VAR2#...) : Average
$DTT(EXPR1#EXPR2)
$DTT(EXPR1)        : Date from value EXPR1 in format EXPR2
$EFG(TXT1#EXP#TXT2): Insert TXT2 at EXP in TXT1
ERG(TXT1#TXT2)     : Cell get prefix TXT1 and suffix TXT2
$ERS(TXT1#EXP1#EXP2#TXT2) Replace from EXP1 EXP2 char. in TXT1 by TXT2
EWT(CEL1#CEL2#CEL3): Calc. final value (principal,rate of interest,periods)
EXP(EXPRESSION)    : e^EXPRESSION
FAK(EXPRESSION)    : Faculty of EXPRESSION
FLR(TEXT)          : Output error text TEXT in cell
$FLR(TEXT)         : Output error text TEXT in cell
FMT(EXP1#EXP2#EXP3#TXT1#TXT2): Cell get format EXP1, with
FMT(EXP1#EXP2#EXP3)  decimals EXP2 in colour EXP3 and prefix
FMT(EXP1#EXP2)       TXT1 and suffix TXT2
FMT(EXP1)
$FMT(EXP1)         : Cell get format EXP1
FND(TXT1#EXP#TXT2) : Position of TXT2 in TXT1 from EXP
FNG(TXT1#EXP#TXT2) : Like FND(), not case sensitive
FRB(EXPRESSION)    : Cell get colour EXPRESSION
$FRB(EXPRESSION)   : Cell get colour EXPRESSION
FST(EXPR1#EXPR2)   : Truncate EXPR1, EXPR2 decimals
FST(EXPRESSION)    : Truncate all decimals of EXPRESSION
GAZ(EXPRESSION)    : Results the largest integer <= EXPRESSION
GDA(CEL1#CEL2#CEL3): Calc. degr. Depreciation(costs,rate,periods)
GMT(RAN1#RAN2)     : weighted average of values in RAN1 with errors in RAN2
$GRS(TEXT)         : Make TEXT uppercase
GWT(CELL1#CELL2)   : G=P*100/p; CELL1=P; CELL2=p
GZR(EXPRESSION)    : degrees to radiant
HTE()              : todays date
HWT(VAR1#VAR2#...) : Maximum value of the arguments
IDT(TXT1#TXT2)     : Compares TXT1 with TXT2, TRUE or FALSE
IDX(RAN#EXP1#EXP2) : Value of cell with coordinates EXP1,EXP2 in RAN
$IDX(RAN#EXP1#EXP2): Text of cell with coordinates EXP1,EXP2 in RAN
ILR(CELL)          : 1 if cell (not variable!) CELL empty, else 0
INV(CELL)          : 1 if cell (not variable!) CELL NA!, else 0
ISA(RANGE)         : Internal deviation with error in RANGE
JAR(EXPRESSION)    : Year from Date EXPRESSION
JTR(CEL1#CEL2#CEL3): Calc. annual discharge rate(credit,rate of interest,currency)
$KLN(TEXT)         : Make TEXT lowercase
$KPS(TXT1#EXP#TXT2): Copy TXT2 to position EXP in TXT1
LFZ(CEL1#CEL2#CEL3): Calc. currency(act. value,future value,rate of interest)
LGB(EXPR1#EXPR2)   : Logarithm of EXPR2 with base EXPR1
LGN(EXPRESSION)    : Logarithmus naturales (log e EXPRESSION)
LIA(CEL1#CEL2#CEL3): Calc. lin. depreciation(costs,rate,periods)
LNG(TEXT)          : Length of TEXT
$LNK(TXT#EXP)      : Results the first EXP characters of TXT
LOG(EXPRESSION)    : Decadic Logarithm (log 10 EXPRESSION)
$LSN(TXT#EXP1#EXP2): Deletes from EXP1 EXP2 characters in TXT
MED(VAR1#VAR2#...) : Median of arguments
MIN(EXPRESSION)    : Minute from time EXPRESSION
MIT(VAR1#VAR2#...) : Average of maximum and minimum of arguments
MON(EXPRESSION)    : Month from date EXPRESSION
NIT(BOOL)          : Boolean complement of BOOL
NUN()              : Now (a time)
NVB()              : NA!
ODR(BOOL1#BOOL2)   : Boolean or of BOOL1, BOOL2
PKT(VAR1#VAR2#...) : Product of arguments
PSZ(CELL1#CELL2)   : p=P*100/G; CELL1=P; CELL2=G
PWT(CELL1#CELL2)   : P=G*p/100; CELL1=G; CELL2=p
QSM(EXPRESSION)    : Calc. cross sum of EXPRESSION
QWZ(EXPRESSION)    : squareroot of EXPRESSION
$RCT(TXT#EXP)      : Results the last EXP characters of TXT
RGZ(EXPR1#EXPR2)   : Rounds EXPR1 to EXPR2 decimals
RGZ(EXPRESSION)    : Rounds EXPRESSION
RNG(CELL#VAR#...)  : Rang of cell in arguments
RST(EXPR1#EXPR2)   : Modulo
RZG(EXPRESSION)    : Radiant to  degrees
SEK(EXPRESSION)    : Seconds from time EXPRESSION
SGL(CELL#VAR#...)  : Number of the first argument equal to CELL
SGR(CELL#VAR#...)  : Number of the first argument larger than CELL
SIN(EXPRESSION)    : Sinus of EXPRESSION, EXPRESSION in radiant
SKL(CELL#VAR#...)  : Number of the first argument smaller than CELL
SLN(VAR)           : Set decimals in cell format
SNH(EXPRESSION)    : Sinus hyperbolicus of EXPRESSION
STA(VAR1#VAR2#...) : Standard deviation with n-1
STD(EXPRESSION)    : Hour of time EXPRESSION
STL(EXPRESSION)    : Cell get style EXPRESSION
$STL(EXPRESSION)   : Cell get style EXPRESSION
STN(VAR1#VAR2#...) : Standard deviation with n
SUM(VAR1#VAR2#...) : Sum of arguments.
SVS(EXP1#RAN#EXP2) : Value of cell EXP2 on the right of EXP1 in RAN
$SVS(EXP1#RAN#EXP2): Text ofr cell EXP2 on the right of EXP1 in RAN
TAG(EXPRESSION)    : Day of date EXPRESSION
TAN(EXPRESSION)    : Tangens of EXPRESSION, EXPRESSION in radiant
$TIL(TXT#EXP1#EXP2): Results from EXP1 EXP2 characters in TXT
TNH(EXPRESSION)    : Tangens hyperbolicus of EXPRESSION
TWT(VAR1#VAR2#...) : Minimum value of the arguments
TZZ(TEXT#EXPR)
TZZ(TEXT)          : Number from TEXT in base EXPR
UND(BOOL1#BOOL2)   : Boolean and of BOOL1, BOOL2
UZT(EXP1#EXP2#EXP3): Time (hour,minute,second)
VAR(VAR1#VAR2#...) : Varianz of arguments with n-1
VRN(VAR1#VAR2#...) : Varianz of arguments with n
VWS(EXP#RAN1#RAN2) : Value of cell at position EXP in RAN1 in RAN2
$VWS(EXP#RAN1#RAN2): Text of cell at position EXP in RAN1 in RAN2
VZN(EXPRESSION)    : Results sign of EXPRESSION as -1,0,1
WAL(CELL#VAR#...)  : Value of the argument with the number in CELL
$WDH(TXT#EXP)      : EXP times TXT
WNN(BOOL#EXPR1#EXPR2): If BOOL true then EXPR1 else EXPR2
$WNN(BOOL#TXT1#TXT2): if BOOL true, then TXT1 else TXT2
WTG(EXPRESSION)    : Weekday from date EXPRESSION
XOR(BOOL1#BOOL2)   : Boolean exclusive or of BOOL1, BOOL2
$ZCN(EXPRESSION)   : Results character with ASCII-Code EXPRESSION
ZFB(EXPRESSION)    : Results Randomnumber between 0 and EXPRESSION
ZFL()              : Results Randomnumber between 0 and 1
ZSS(CEL1#CEL2#CEL3): Calc. rate of interest(future value,actual value,periods)
$ZTT(EXPR1#EXPR2)
$ZTT(EXPR1)        : Time from value EXPR1 in format EXPR2
ZVS(EXP1#RAN#EXP2) : Value of the cell EXP2 below EXP1 in RAN
$ZVS(EXP1#RAN#EXP2): Text of the cell EXP2 below EXP1 in RAN
ZWN(%/$#EXPRESSION): Variable %/$ get value EXPRESSION
$ZWN(%/$#TEXT)     : Variable %/$ get text TEXT
ZWT(CEL1#CEL2#CEL3): Calc. Future Value(instalment,rate of interest,periods)
$ZZT(EXP1#EXP2#EXP3)
$ZZT(EXP1#EXP2)    : Make text (Number,decimals,base)

B. Important Hints

Most Requesters are asynchrone. The gadget between OK and Cancel do the
same as OK, but do not close the requester. The action works on the current
worksheet, not on the worksheet which was current when you've  opened the
requester. The range in the gadget range is used, not the range selected in
the worksheet.

Everything you do in managers have immediatly effects in the working of
StarAm Plan. There is no possibility to cancel. Managers are not requesters!

The function manager only contains user defined functions! The build in
functions are in the menu Calculate.

If you use password protection of cells, you should note, that the passwords
and the protected cells aren't saved encrypted. You must save the hole
worksheet encrypted. You need XPK with cryptography librarys to encrypt a
worksheet.

The ranges of range names, which are linked with the cells, mustn't overlap.

You mustn't load two or more projects which contain the same worksheet at the
same time.

StarAm Plan uses doubleprecision floating point numbers. This has two effects:
1. These numbers have left and right of the decimalpoint together 16 decimals.
   This means if a number is 1236682.134733647 and you select as cellformat
   round to 16 then, right the last number, 7 WRONG numbers occur. You mustn't
   select a rounding of more then 16 minus number of decimals left of the
   decimalpoint.
2. Calculating with floating point numbers isn't exact (a problem of ALL
   personal computers, not only of StarAm Plan!). After a simple addition the
   last decimal might be wrong. By many operations this can produce an
   absolutely wrong result. Perhaps, rounding of intermediate results might
   help. Usually there aren't any problems, nevertheless: DO NEVER TRUST
   BLINDLY A RESULT!
   
The routine of linear (etc.) regression is only mathematically correct, if the
errors of the x-values are much smaller than the errors of the y-values.
By exp. and pow. regression, the routines are exact only if the relative
standard deviations of the measured values are equal.
